This invention relates to industrial and business processes and, more particularly, to modeling, analyzing and controlling of such processes.
Today""s business organizations typically include many processes. Some are simple, some are complex, and some comprise a plurality of sub-processes. To give an example, the work done in a corporate patent department really comprises a collection of processes. Illustratively, one process relates to the receipt of invention ideas from employees, another relates to the creation of a patent application and its filing in the Patent Office, still another relates to the prosecution of the patent application, yet another relates to the harvesting of commercial benefit from the intellectual property represented by the issued patent, etc. Some business processes are carried out by people, some are carried out strictly by computers or other machines, and some are carried out by people interacting with computers. Obviously, the efficiency of processes is extremely important to the overall efficiency of the organization concerned. To assure this efficiency, an entire art has developed that is dedicated to the study, improvement, and real-world implementation of organizational processes.
The most basic tool for studying processes is the modeling tool. It provides a mechanism for capturing, describing, and documenting in some selected language the process under consideration. It may be an existing process or a proposed process (herein collectively referred to as an xe2x80x9cEP processxe2x80x9d). The selected languagc typically is one that expresses the model in the form of a set of data structures and associated equations which allow analysis and other activities to take place relative to the EP process.
Once a process is modeled, the next natural step is to study the modeled process in order to determine its characteristics and to derive therefrom some knowledge about the modeled process. Tools that concentrate on the evaluation of static attributes of the modeled process are referred to as xe2x80x9canalysis toolsxe2x80x9d. For example, an analysis tool may be used to determine the average length of time that the corporate patent department takes between the receipt of a patentable idea and the filing of a patent application.
Tools that concentrate on the dynamic behavior of the modeled process are referred to as xe2x80x9csimulation toolsxe2x80x9d. They perform analysis by simulating the operation of the modeled process. Monte Carlo simulation, for example, provides one approach to simulation, where the behavior of individual elements of the modeled process are considered together with their stochastic characteristics. Another form of simulation is known as Discrete Event simulation. It takes into account the arrival characteristics of events and it reveals whatever bottlenecks exist in the modeled process (e.g., a constricted access to a given set of resources). A discrete event simulation of a corporate patent department, for example, may uncover the likelihood of a bottleneck at the department""s printer. Such a bottleneck is likely to result in a queue of print jobs, and the consequent deleterious effect on the department""s efficiency measure.
Many businesses employ processes where a computer or other machine actually performs some of the work that constitutes part of the process, and also directs at least some of the workflow of the process. For example, in a corporate patent department a computer system may include software modules that help prepare documents (such as letters to inventors), as well as software modules that trigger reminders to attorneys and their assistants that amendments are due, that management reports need to be created and printed, etc.
Software modules that perform workflow functions (i.e., direct the workflow) are usually referred to as xe2x80x9cworkflow tools.xe2x80x9d They typically are derived heuristically for the particular business process that needs to be directed. Indeed, there are a number of commercially available software modules which can be customized by the vendor for various specific business processes. In the current state of the art, the customizing of these tools is not done in conjunction with modeling, simulation, or other automated means. Rather, modifications typically are introduced when a customer requests the programmer to accommodate special needs, and the programmer programs them in. As an aside, a workflow tool can be viewed as a means to supervise processes since it is the tool that provides instructions and/or data to a person or to some automated means to trigger the initiation of some other some task or process.
Still another type of tool that is available in the field of business processes is the xe2x80x9ccode-generation toolxe2x80x9d. This tool employs information from the modeling tool to develop software that can be inserted into the EP process computer(s) to thereby implement a process which conforms to the model that is supplied by the modeling tool. This tool is typically used when a new process is being designed and where, therefore, the starting point is the modeling tool (in contrast to situations where the modeling tool attempts to describe an existing process).
Although the above described tools are available in the business processes arts, no system is available that combines a sufficient number of the various tools to create an integrated and robust system that, through feedback, can continually improve its level of efficiency.
In accordance with the present disclosure, a novel arrangement is created with a commonly shared data repository which maintains a formal model of a process under consideration, and a plurality of tools in the arrangement that, through appropriate cooperation between the tools, offer the ability to model an EP process, analyze the process, control the process, modify the process, improve the model, and generally result in a more efficient EP process. The set of tools included in the arrangement is not limited although, as a minimum, it is considered necessary to include a modeling tool, a workflow tool, and a code generation tool. More specifically, the workflow tool allows interactions with an EP process to develop information that can be used to enhance the EP process model (in the sense of proposing an improved EP process); the modeling tool allows for modifying the model data; and the code generation tool allows for the provision and delivery of an enhanced code to the EP process which, in turn, allows the workflow tool to effect an improved EP process. The common repository forms a nexus for the two-way communication that exists between the various tools employed in connection with the EP process.